$(function() {

    $('#crearPedidoBtn').on('click', function(e) {
////        $(".printer").bind("click",function()
//	{
//
//
////	});
        e.preventDefault();
////        alert('submitin');
//        $('#pedido-form').submit();
//        verificarValidacionModal('#pedido-form');
//        alert(verificarValidacionModal('#pedido-form'));

        if (verificarValidacionModal('#pedido-form')) {
            $.ajaxSetup({
                async: false
            });
            $('#imprimirArea').printArea({}, function() {
                $('#pedido-form').submit();
            });

            $.ajaxSetup({
                async: true
            });

        }
    });


    var isCtrl = false;
    document.onkeyup = function(e) {
        if (e.which == 17)
            isCtrl = false;
    }
    document.onkeydown = function(e) {
        if (e.which == 17)
            isCtrl = true;
        if (e.which == 81 && isCtrl == true) {
            $('#buscador').select2('open');
//            alert('Keyboard shortcuts are cool!');
            return false;
        }
    }


    var validador = 0;

    $('#mostrarOpcionesModal').on('click', function() {
        if (validador == 0) {
            $('.opcionesModal').animate({
                'margin-left': '-20px',
            }, 1000, function() {
            });
            validador = 1;
        }
        else {
            $('.opcionesModal').animate({
                'margin-left': '-62%',
            }, 1000, function() {
            });
            validador = 0;
        }

    });

    if ($('.alert-success').text() == "Ã—Pedido creado con exito.") {
        $('.alert-success').fadeIn('slow').delay(1500).fadeOut('slow', function() {
            $(".alert-succes").text('');
        });
    }

    $('#cargarTicket').on('click', function() {
        $.get(baseUrl + 'ventas/ticket/tickets', function(data) {
            $("#mainModal").html(data);
            $("#mainModal").modal("show");
//             deshabilitarBotones();
        });
    });

    $('#regresarSeccion').click(function(e) {

        $('#regresarSeccion').animate({
            'height': 'toggle'
        }, 100, function() {
        });
//        alert('regresar');
        $('#menuDeCaja').animate({
            'height': 'toggle'
        }, 10, function() {
        });
        $('#menus').html('');
        e.preventDefault();
    });

    $('.secciones').click(function(e) {
//        alert();
        e.preventDefault();
        $seccion_id = $(this).attr('href');


        $.ajax({
            type: "GET",
            url: baseUrl + "menus/menu/ajaxCargarMenus/id_seccion/" + $seccion_id,
//            dataType: 'json',
//            data: id,
            beforeSend: function() {
//                showModalLoading();
                $("#loading-fade").fadeIn();
            },
            success: function(data) {


                if (data != '') {

                    if (data != '') {
                        $('#menuDeCaja').animate({
                            'height': 'toggle'
                        }, 10, function() {
                            $("#loading-fade").fadeOut();
                        });
                        $('#menus').html(data);
                        $('#regresarSeccion').animate({
                            'height': 'toggle'
                        }, 100, function() {
                        });
                    }

                } else {
//                    bootbox.alert('no se puede pagar el pedido');
                }
            }
        });

//        $.get(baseUrl + "menus/menu/ajaxCargarMenus/id_seccion/" + $seccion_id, function(data) {
//            showModalLoading();
//            if (data != '') {
//                $('#menuDeCaja').animate({
//                    'height': 'toggle'
//                }, 10, function() {
//                });
//                $('#menus').html(data);
//                $('#regresarSeccion').animate({
//                    'height': 'toggle'
//                }, 100, function() {
//                });
//            }
//            else {
//            }
////            $('#menus').html(data);
//        });
//        $.getJSON(baseUrl + "menus/menu/ajaxPaginacionSeccion/id_seccion/" + $seccion_id, function(data) {
//        }).done(function(data) {
//            console.log(data);
//
//        });
    });
    $contador = 0;
    $('#agregarTicket').on('click', function() {
        $.get(baseUrl + 'ventas/pedido/ticket', function(data) {
            $("#mainModal").html(data);
            $("#mainModal").modal("show");
//             deshabilitarBotones();
        });
    });
//    cargar imagen del menu
//     $("#Menu_imagen").change(function(){
//      console.log($(this));
//        readURL(this);
//    });

//     if ($vacio != true) {
//        $.getJSON('cargarProducto/id/' + $pedidoId, function(data){
//        }).done(function(data) {
//            
//            for (i=0; i<data.length; i++)
//            {
//              agregarProducto(data[i].producto_id, data[i].cantidad);
//              
//            }
//           
//           
//        });
//    }
    if ($vacio == true) {
        alert($vacio);
    }

    $('#cerrarCajaMain').on('click', function() {

        bootbox.confirm("Â¿Desea cerrar Caja?", function(result) {
            if (result) {
                $.getJSON(baseUrl + "ventas/pedido/cerrarCaja", function(data) {
                }).done(function(data) {

                    if (data.success) {
                        window.location.href = baseUrl + "ventas/pedido/create";
                    }
                    else {
                        bootbox.alert('No puede cerrar hubo un error');
                    }

                });

            }
        });


    });

});

var persona_id;

function verificarValidacionModal($form)
{
    var form = $($form);
    var settings = form.data('settings');
    settings.submitting = true;
    var validador = false;
    $.ajaxSetup({
        async: false
    });
    $.fn.yiiactiveform.validate(form, function(messages) {
        $.each(messages, function() {
            console.log(this);
        });
        if ($.isEmptyObject(messages)) {
            validador = true;
//       

        }
        else {
            settings = form.data('settings'),
                    $.each(settings.attributes, function() {
                        $.fn.yiiactiveform.updateInput(this, messages, form);
                    });

        }
    });
    $.ajaxSetup({
        async: true
    });

    return validador;
}
function cargarPedidosPendienteModal() {
    $.get(baseUrl + 'ventas/pedido/ajaxPedidosPendienteCaja', function(data) {
        $("#mainModalPP").html(data);
        $("#mainModalPP").modal("show");
//             deshabilitarBotones();
    });
}
function cargarPedidosNoPagados() {
    $.get(baseUrl + 'ventas/pedido/ajaxPedidosNoPagadosCaja', function(data) {
        $("#mainModalPP").html(data);
        $("#mainModalPP").modal("show");
//             deshabilitarBotones();
    });
}
function cargarPedidosReservados() {
    $.get(baseUrl + 'ventas/pedido/ajaxPedidosReservadosCaja', function(data) {
        $("#mainModalPP").html(data);
        $("#mainModalPP").modal("show");
//             deshabilitarBotones();
    });
}
function cargarTicketsOcupados() {
    $.get(baseUrl + 'ventas/ticket/ticketsOcupados', function(data) {
        $("#mainModal").html(data);
        $("#mainModal").modal("show");
//             deshabilitarBotones();
    });
}

var $vacio;
var $pedidoId;
var productosSeleccionados = [];

function agregarTicket(id, numero) {

    $('#ticketNumero').html(numero);
    $('#Pedido_ticket_id').val(id);
    $('#Pedido_ticket_id_em_').toggle();
    $("#mainModal").modal("hide");

}

function mostrarNumFactura(status) {
    
//     $.get(baseUrl + 'personas/persona/personaFactura', function(data) {
//        $("#mainModal").html(data);
//        $("#mainModal").modal("show");
////             deshabilitarBotones();
//    });
//    console.log(status);
    if (status) {
//        $('#Pedido_numeroFactura').css('display', 'block');
         $.get(baseUrl + 'personas/persona/personaFactura', function(data) {
        $("#mainModal").html(data);
        $("#mainModal").modal("show");
//             deshabilitarBotones();
    });
//
    }
//    else {
//        $('#Pedido_numeroFactura').css('display', 'none');
//
//    }
}
function agregarMenu(id) {
    if (id > 0) {
        $cantidad = 1;

        $.getJSON('buscarMenu/id/' + id, function(data) {
        }).done(function(data) {

            if (data.precio) {
                $precio = Number(data.precio);
            }

            if (!$('#producto_' + data.id).html()) {
                $('#producto').prepend(
                        '<tr id="producto_' + data.id + '" class="producto">' +
                        ' <td class="plusProducto"><a class="delete" title="" rel="tooltip" href="#" data-original-title="Borrar" onclick="mas(' + data.id + ');"><i class="plus">+</i></a></i></td>' +
                        ' <td> <input name="menu_producto[' + $contador + '][cantidad]" id="cantidad_' + data.id + '"   class="input-mini numeric" value="' + $cantidad + '" onchange="calcularPrecio(' + data.id + ') ;"></td>' +
                        ' <td class="minusProducto"><a class="delete" title="" rel="tooltip" href="#" data-original-title="Borrar" onclick="menos(' + data.id + ');"><i class="minus">-</i></a></i></td>' +
                        ' <td>' + data.nombre + '<input name="menu_producto[' + $contador + '][menu_id]" type="hidden" value="' + data.id + '"></td>' +
                        ' <td> <span id="Lprecio_' + data.id + '">' + $precio.toFixed(2) + '</span> <input name="menu_producto[' + $contador + '][precio]" id="precio_' + data.id + '" type="hidden" class="input-mini" readonly value="' + $precio.toFixed(2) + '"></td>' +
                        ' <td> <span id="Lsubtotal_' + data.id + '"></span> <input name="menu_producto[' + $contador + '][subtotal]" id="subtotal_' + data.id + '" type="hidden" class="input-mini" readonly> </td>' +
                        ' <td class="deleteProducto"><a class="delete" title="" rel="tooltip" href="#" data-original-title="Borrar" onclick="borrarProducto(' + data.id + ');"><i class="icon-trash"></i></a></i></td>' +
                        '</tr>');
                calcularPrecio(data.id);
                $contador++;
                productosSeleccionados.push(data.id);
                console.log(productosSeleccionados);
//            deshabilitarBotones();
                maskAttributes();


            }
            else {
                $('#cantidad_' + data.id).focus()

            }

        });
    }
}

function calcularPrecio(id) {
    $precio = parseFloat($("#precio_" + id).val());
    $cantidad = parseFloat($("#cantidad_" + id).val());
    console.log('-----------------calcular precio');
    console.log('precio: ' + $precio);
    console.log('cantidad: ' + $cantidad);
//    $ivaProducto = parseFloat($("#iva_" + id).attr('iva'));

    $subtotal = $precio * $cantidad;
    console.log('subtotal: ' + $subtotal);
//    $iva = $subtotal * $ivaProducto;
//    $total = $subtotal * ($ivaProducto + 1);
    $total = $subtotal;

    $("#subtotal_" + id).val($subtotal.toFixed(2));
    $("#Lsubtotal_" + id).text($subtotal.toFixed(2));

//    $("#iva_" + id).val($iva.toFixed(2));
//    $("#Liva_" + id).text($iva.toFixed(2));

//    $("#total_" + id).val($total.toFixed(2));
//    $("#Ltotal_" + id).text($total.toFixed(2));
    calcularTotal();
}
function calcularTotal() {
    //desglose
    $subtotalFactura = 0;
    $tarifaCero = 0;
    $tarifaDoce = 0;
    $noIva = 0;
    $total = 0;
    $(".producto").each(function(e) {
//        console.log(e);
        //suma subtotal
        $subtotalFactura += parseFloat($(this).find($("[id^='subtotal_']")).val());
        console.log('subFactura:  ', $subtotalFactura);
        console.log('total:  ', $total);
        //suma tarifas de iva (12%, 0%, no iva)
        if ($(this).find($("[id^='iva_']")).attr('ivaL') == "12%") {
            $tarifaDoce += parseFloat($(this).find($("[id^='subtotal_']")).val());
//        } else if ($(this).find($("[id^='iva_']")).attr('ivaL') == "0%") {
//            $tarifaCero += parseFloat($(this).find($("[id^='subtotal_']")).val());
//        } else {
//            $noIva += parseFloat($(this).find($("[id^='subtotal_']")).val());
        }
        //suma total
//        $total += parseFloat($(this).find($("[id^='total_']")).val());
//        $total += parseFloat($subtotalFactura);
    });

    $("#subtotal").text($subtotalFactura.toFixed(2));//subtotal
//    $("#ivaCero").text($tarifaCero.toFixed(2));//iva 0%
//    $("#ivaDoce").text($tarifaDoce.toFixed(2));//iva 12%
//    $("#noIva").text($noIva.toFixed(2));//no iva 
//    $("#ivaTotal").text(($tarifaDoce * 0.12).toFixed(2));//iva 12% total
//    $("#total").text($total.toFixed(2));//total
    $("#total").text($subtotalFactura.toFixed(2));//total
    //Agregar total al hidden
//    $("#VentasPedido_monto").val($total.toFixed(2));
    $("#Pedido_valor_total").val($subtotalFactura.toFixed(2));
}

function mas(id) {
    $cantidad = parseFloat($("#cantidad_" + id).val());
    $cantidad += 1;
//    $("#cantidad_" + id).val($cantidad);
    $("#cantidad_" + id).attr('value', $cantidad);

    calcularPrecio(id);

}
function menos(id) {
    $cantidad = parseFloat($("#cantidad_" + id).val());
    if ($cantidad > 1) {
        $cantidad -= 1;
//        $("#cantidad_" + id).val($cantidad);
        $("#cantidad_" + id).attr('value', $cantidad);
        calcularPrecio(id);
    }
}

function borrarProducto(id) {
    $("#producto_" + id).remove()
    calcularPrecio();
//    productosSeleccionados.splice($.inArray(id, productosSeleccionados),1);
    var idx = productosSeleccionados.indexOf(String(id)); // Localizamos el indice del elemento en array
    if (idx != -1)
        productosSeleccionados.splice(idx, 1); // Lo borramos definitivamente
//    $(this).remove();
}

function pagarPedido(id) {
//var url = "clientes/ClienteContacto/ajaxCargarActividades/id/" + entidad_id;

    $.ajax({
        type: "POST",
        url: "ajaxPagarPedido/id/" + id,
        dataType: 'json',
        data: id,
        success: function(data) {
            if (data.success) {

                $.fn.yiiGridView.update('pedidos-no-pagados-grid');

            } else {
                bootbox.alert('no se puede pagar el pedido');
            }
        }
    });

}


function prepararPedidoReservado(id) {
//var url = "clientes/ClienteContacto/ajaxCargarActividades/id/" + entidad_id;
    $.ajax({
        type: "POST",
        url: "ajaxPrepararPedidoReservado/id/" + id,
        dataType: 'json',
        data: id,
        success: function(data) {
            if (data.success) {

                $.fn.yiiGridView.update('pedidos-reservados-grid');

            } else {
                bootbox.alert('no se puede pagar el pedido');
            }
        }
    });

}

function showModalLoading() {
    urlLoading = baseUrl.replace('index.php', '')
    var html = "";
    html += "<div class='modal-header'><a class='close' data-dismiss='modal'>&times;</a><h4><i class='icon-refresh'></i> Cargando</h4></div>";
    html += "<div class='loading'><img class='image-loading' src='" + urlLoading + "images/loading2.gif' /></div>";
    $("#mainModal").html(html);
    $("#mainModal").modal("show");
}








   